package com.lml.Utils

import android.widget.Toast
import com.lml.permissionx.MyApplication

/**
 * Toast的makeText()方法接收3个参数：
 * 第一个参数是Toast显示的上下环境，必不可少；
 * 第二个参数是Toast显示的内容，可以传入字符串和字符串资源id两种类型；
 * 第三个参数是Toast显示时长，只支持Toast.LENGTH_SHORT和Toast.LENGTH_LONG两种值。
 *
 * 此工具类通过给String类和Int类各添加一个扩展函数，并在里面封装弹出Toast的具体逻辑，这样以后每次想要弹出Toast的时候，只需要调用它们的扩展函数就可以了
 * 第一个参数使用了全局获取Context的技巧，所以不再需要调用方手动传入context了
 * 第三个参数使用了给函数设定参数默认值的功能，默认使用Toast.LENGTH_SHORT，调用方也可以手动传入Toast.LENGTH_LONG
 * 使用案例："This is a example".showToast(Toast.LENGTH.LONG)
 *
 */

fun String.showToast(duration: Int = Toast.LENGTH_SHORT) {
    Toast.makeText(MyApplication.context, this, duration).show()
}

fun Int.showToast(duration: Int = Toast.LENGTH_SHORT) {
    Toast.makeText(MyApplication.context, this, duration).show()
}